package com.lantu.config;

//注意：
import org.springframework.web.filter.CorsFilter;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.CorsConfigurationSource;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;

@Configuration
public class MyCorsConfig {

    @Bean
    public CorsFilter corsFilter(){
        //1,添加CORS配置信息
        CorsConfiguration configuration = new CorsConfiguration();
        //1）准许的域，不要写*，否则cookie就无法使用
        configuration.addAllowedOrigin("http://localhost:8888");
        //2)是否发送Cookie信息
        configuration.setAllowCredentials(true);
        //3）准许的请求方式
        configuration.addAllowedMethod("*");
        //4)准许的头信息
        configuration.addAllowedHeader("*");

        //过滤哪些资源

        //添加映射路径，我们拦截一切要求
        UrlBasedCorsConfigurationSource urlBasedCorsConfigurationSource = new UrlBasedCorsConfigurationSource();
        urlBasedCorsConfigurationSource.registerCorsConfiguration("/**",configuration);

        //3，返回新的CorsFilter
        return new CorsFilter(urlBasedCorsConfigurationSource);

    }
}
